const Sequelize = require('sequelize');
module.exports = function(sequelize, DataTypes) {
  return sequelize.define('D_ICPMS', {
    ID: {
      type: DataTypes.INTEGER,
      allowNull: false,
      primaryKey: true
    },
    Sample_ID: {
      type: DataTypes.INTEGER,
      allowNull: true,
      comment: "样品ID"
    },
    Sample_Name: {
      type: DataTypes.STRING(50),
      allowNull: true,
      comment: "样品名称"
    },
    Sample_fractions: {
      type: DataTypes.STRING(50),
      allowNull: true,
      comment: "Sample fractions"
    },
    Measurement_date_time: {
      type: DataTypes.STRING(200),
      allowNull: true,
      comment: "Category"
    },
    U_Th_Pb_U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "U(ppm)"
    },
    U_Th_Pb_Th: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Th(ppm)"
    },
    U_Th_Pb_Pb: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Pb(ppm)"
    },
    U_Th_Pb_Th_U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Th\/U"
    },
    U_Th_Pb_207Pb_235U_measured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/235U"
    },
    U_Th_Pb_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE%"
    },
    U_Th_Pb_206Pb_238Umeasured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "206Pb\/238U"
    },
    U_Th_Pb_206Pb_238Umeasured_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE%"
    },
    rho: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "rho (correlation coefficient)"
    },
    D_238U_206Pb_measured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "238U\/206Pb"
    },
    D_238U_206Pb_measured_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE%"
    },
    D_207Pb_206Pb_measured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/206Pb"
    },
    D_207Pb_206Pb_measured_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE%"
    },
    D_206Pb_204Pb_measured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "(206Pb\/204Pb)measured"
    },
    D_206Pb_204Pb_measured_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE%"
    },
    Common_Pb_correction: {
      type: DataTypes.STRING(100),
      allowNull: true,
      comment: "Common Pb correction"
    },
    D_207Pb_206Pb_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/206Pb age(Ma)"
    },
    D_207Pb_206Pb_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE(Ma)"
    },
    D_207Pb_235U_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/235U age(Ma)"
    },
    D_207Pb_235U_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE(Ma)"
    },
    D_206Pb_238U_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "206Pb\/238U age(Ma)"
    },
    D_206Pb_238U_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE(Ma)"
    },
    f206: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "f206(%)"
    },
    Disconcordance: {
      type: DataTypes.STRING(100),
      allowNull: true,
      comment: "Discordance(%)"
    },
    D_208Pb_232Th: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "208Pb\/232Th"
    },
    D_208Pb_232Th_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE%"
    },
    D_208Pb_232Th_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "208Pb\/232Th age(Ma)"
    },
    D_208Pb_232Th_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE(Ma)"
    },
    f208: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "f208(%)"
    },
    Sample_Size: {
      type: DataTypes.STRING(100),
      allowNull: true,
      comment: "Sample Size"
    },
    Pretreatment_method: {
      type: DataTypes.STRING(100),
      allowNull: true,
      comment: "Pretreatment method"
    },
    Initial_Pb_composition: {
      type: DataTypes.STRING(100),
      allowNull: true,
      comment: "Initial Pb composition"
    },
    Tracer_name: {
      type: DataTypes.STRING(100),
      allowNull: true,
      comment: "Tracer name"
    },
    Dates_207Pb_235U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/235U age (Ma)"
    },
    Dates_207Pb_235U_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE (Ma)"
    },
    Dates_206Pb_238U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "206Pb\/238U age (Ma)"
    },
    Dates_206Pb_238U_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE (Ma)"
    },
    Dates_207Pb_206Pb: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/206Pb age (Ma)"
    },
    Dates_207Pb_206Pb_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE (Ma)"
    },
    Pbc: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Pbc"
    },
    Pb_Pbc: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Pb*\/Pbc"
    },
    Composition_U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "U"
    },
    Isotopic_Ratios_Th_U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Th\/U"
    },
    D_206Pb_204Pb: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "206Pb\/204Pb"
    },
    D_208Pb_206Pb: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "208Pb\/206Pb"
    },
    D_207Pb_235U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/235U"
    },
    D_207Pb_235U_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_206Pb_238U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "206Pb\/238U"
    },
    D_206Pb_238U1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    correlation_coefficient: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "correlation coefficient"
    },
    D_207Pb_206Pb: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "207Pb\/206Pb"
    },
    D_207Pb_206Pb_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    lambda238: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "λ238"
    },
    lambda235: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "λ235"
    },
    D_206Pb_204Pb_blank: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "(206Pb\/204Pb)blank"
    },
    D_206Pb_204Pb_blank_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE\t"
    },
    D_207Pb_204Pb_blank: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "(207Pb\/204Pb)blank"
    },
    D_207Pb_204Pb_blank_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE\t"
    },
    D_208Pb_204Pb_blank: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "(208Pb\/204Pb)blank"
    },
    D_208Pb_204Pb_blank_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    U_blank_mass: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "U blank mass"
    },
    Th_U_of_melt: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Th\/U of melt"
    },
    D_231Pa_235U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "231Pa\/235U"
    },
    D_sample: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "sample"
    },
    blank: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "blank"
    },
    D_18O_16O: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "18O\/16O"
    },
    K: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "wt%"
    },
    D_1SD: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SD"
    },
    D_40Ar_38Ar_measured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: " (40Ar\/38Ar)measured"
    },
    D_40Ar_38Ar_measured_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_38Ar_36Ar_measured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: " (38Ar\/36Ar)measured"
    },
    D_38Ar_36Ar_measured_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_40Ar_radiogenic: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40Ar*"
    },
    D_40K: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40K"
    },
    D_40Ar_40Art: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40Ar*\/40Art(%)"
    },
    D_40Ar_40Art_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_40Ar_40K: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40Ar*\/40K"
    },
    K_Ar_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "K-Ar age"
    },
    K_Ar_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    Temperature: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Temperature（℃）"
    },
    Laser_power: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Laser power"
    },
    D_40Ar_39Ar_measured: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "(40Ar\/39Ar)measured"
    },
    D_40Ar_39Ar_measured_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_36Ar_39Ar: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: " 36Ar\/39Ar"
    },
    D_36Ar_39Ar_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_37Ar_39Ar: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: " 37Ar\/39Ar"
    },
    D_37Ar_39Ar_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_40Ar_39ArK: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40Ar*\/39ArK"
    },
    D_40Ar_39ArK_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    Ar_Ar_40Ar_radiogenic: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40Ar*"
    },
    D_39Ar: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "39Ar"
    },
    D_40Ar: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40Ar"
    },
    K_Ca: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "K\/Ca"
    },
    K_Ca_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    Ar_Ar_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Ar-Ar age"
    },
    Ar_Ar_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    J_value: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "J value"
    },
    J_value_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    Standard_name: {
      type: DataTypes.STRING(200),
      allowNull: true,
      comment: "Standard name"
    },
    Standard_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Standard age (Ma)"
    },
    Decay_constant: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "40K decay constant"
    },
    D_238U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "238U"
    },
    D_238U_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_232Th: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "232Th"
    },
    D_232Th_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    D_4He: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "4He"
    },
    D_4He_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    Raw_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Raw age"
    },
    Raw_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    FT: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "FT (alpha ejection correction)"
    },
    FT_corrected_age: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "FT corrected age"
    },
    FT_corrected_age_1SE: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "1SE"
    },
    Th_U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Th\/U"
    },
    Mass: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Mass"
    },
    Radius: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Radius"
    },
    D_Length: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Length"
    },
    Width: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Width"
    },
    U: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "U"
    },
    Th: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "Th"
    },
    eU: {
      type: DataTypes.DOUBLE,
      allowNull: true,
      comment: "eU"
    },
    remarks: {
      type: DataTypes.STRING(200),
      allowNull: true,
      comment: "备注"
    },
    OrderNo: {
      type: DataTypes.INTEGER,
      allowNull: true,
      comment: "排序"
    },
    status: {
      type: DataTypes.INTEGER,
      allowNull: true,
      comment: "是否启用"
    },
    CreateID: {
      type: DataTypes.INTEGER,
      allowNull: true,
      comment: "创建人ID"
    },
    Creator: {
      type: DataTypes.STRING(50),
      allowNull: true,
      comment: "创建人"
    },
    CreateDate: {
      type: DataTypes.DATE,
      allowNull: true,
      comment: "创建时间"
    },
    ModifyID: {
      type: DataTypes.INTEGER,
      allowNull: true,
      comment: "修改人ID"
    },
    Modifier: {
      type: DataTypes.STRING(50),
      allowNull: true,
      comment: "修改人"
    },
    ModifyDate: {
      type: DataTypes.DATE,
      allowNull: true,
      comment: "修改时间"
    },
    last_updated: {
      type: DataTypes.DATE,
      allowNull: true
    }
  }, {
    sequelize,
    tableName: 'D_ICPMS',
    schema: 'public',
    timestamps: false,
    indexes: [
      {
        name: "D_ICPMS_ID_idx",
        fields: [
          { name: "ID" },
        ]
      },
      {
        name: "D_ICPMS_Sample_ID_idx",
        fields: [
          { name: "Sample_ID" },
        ]
      },
      {
        name: "D_ICPMS_pkey",
        unique: true,
        fields: [
          { name: "ID" },
        ]
      },
    ]
  });
};
